Due to the limitations of the underlying link over which it is transmitted, a long datagram may need to be split into multiple smaller fragments for transmission. These fragments are then transmitted independently and the fragments must be reassembled into the original datagram before further processing of that original datagram can take place. Carrying out this reassembly processing in a parallelized fashion enables a large number of fragments to be handled at the receiver, but brings the need for synchronisation between the processing elements performing the parallelized reassembly to reduce contention and therefore allow efficient scaling of the processing to such a parallelized environment.